home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 7 / BBS in a Box - Macintosh - Volume VII (BBS in a Box) (January 1993).iso / Files / Hyper / Me-Mz / METROSTK.cpt / MetroStack / stack.txt < prev   
Text File  |  1989-04-11  |  7KB  |  217 lines

  1. -- stack: in
  2. -- format: 8 (HyperCard 1)
  3. -- flags: 0x1000 (none)
  4. -- protect password hash: 0
  5. -- maximum user level: 5 (scripting)
  6. -- window: Rect(x1=0, y1=0, x2=0, y2=0)
  7. -- screen: Rect(x1=0, y1=0, x2=0, y2=0)
  8. -- card dimensions: w=0 h=0
  9. -- scroll: x=0 y=0
  10. -- background count: 1
  11. -- first background id: 2640
  12. -- card count: 8
  13. -- first card id: 6261
  14. -- list block id: 6644
  15. -- print block id: 0
  16. -- font table block id: 0
  17. -- style table block id: 0
  18. -- free block count: 0
  19. -- free size: 0 bytes
  20. -- total size: 117408 bytes
  21. -- stack block size: 6656 bytes
  22. -- created by hypercard version: 0x01208000
  23. -- compacted by hypercard version: 0x01208000
  24. -- modified by hypercard version: 0x01208000
  25. -- opened by hypercard version: 0x01208000
  26. -- patterns[0]: 0x0000000000000000
  27. -- patterns[1]: 0x8000000008000000
  28. -- patterns[2]: 0x8800220088002200
  29. -- patterns[3]: 0x8888222288882222
  30. -- patterns[4]: 0x88AA22AA88AA22AA
  31. -- patterns[5]: 0xCCAA33AACCAA33AA
  32. -- patterns[6]: 0xEEAABBAAEEAABBAA
  33. -- patterns[7]: 0xEEBBBBEEEEBBBBEE
  34. -- patterns[8]: 0xFFBBFFEEFFBBFFEE
  35. -- patterns[9]: 0xFFBBFFFFFFBBFFFF
  36. -- patterns[10]: 0x8010022001084004
  37. -- patterns[11]: 0xFFFFFFFFFFFFFFFF
  38. -- patterns[12]: 0x8822882288228822
  39. -- patterns[13]: 0x1122448811224488
  40. -- patterns[14]: 0xC4800C6843023026
  41. -- patterns[15]: 0xB130031BD8C00C8D
  42. -- patterns[16]: 0xAA00AA00AA00AA00
  43. -- patterns[17]: 0x8822552288225522
  44. -- patterns[18]: 0x8855225588552255
  45. -- patterns[19]: 0x77DD77DD77DD77DD
  46. -- patterns[20]: 0x8000000000000000
  47. -- patterns[21]: 0xAA55AA55AA55AA55
  48. -- patterns[22]: 0xFF00FF00FF00FF00
  49. -- patterns[23]: 0x8244394482010101
  50. -- patterns[24]: 0x8814224188412214
  51. -- patterns[25]: 0x8080413E080814E3
  52. -- patterns[26]: 0x22048C7422179810
  53. -- patterns[27]: 0xFF00FF00FF00FF00
  54. -- patterns[28]: 0x25C8328964244C92
  55. -- patterns[29]: 0xA29C41BE2AC914EB
  56. -- patterns[30]: 0x40A00000040A0000
  57. -- patterns[31]: 0x8040200002040800
  58. -- patterns[32]: 0xAAAAAAAAAAAAAAAA
  59. -- patterns[33]: 0xFF80808080808080
  60. -- patterns[34]: 0x081C22C180010204
  61. -- patterns[35]: 0xFF808080FF080808
  62. -- patterns[36]: 0xF87422478F172271
  63. -- patterns[37]: 0xBF00BFBFB0B0B0B0
  64. -- patterns[38]: 0xFF7FBE5DA2418000
  65. -- patterns[39]: 0xFAF5FAF5A050A050
  66. -- checksum: 0x0
  67. ----- HyperTalk script -----
  68. -----------------------------------------------------------------------
  69. -----------------------------------------------------------------------
  70. --------- MetroStack is ¬©1989 D.C. Mac Services, Arlington, VA --------
  71. ---------------------- All Scripts by Will Cate -----------------------
  72. -----------------------------------------------------------------------
  73. -----------------------------------------------------------------------
  74.  
  75. on openStack
  76.   global Q,oneVis,twoVis,tripOn,infoOn,startEnd, done,theStart,theEnd,boxText
  77.   if the version < 1.2 then
  78.     put "Sorry!  Requires HyperCard 1.2 or greater!" with "Go Home"
  79.     go home
  80.     exit openStack
  81.   end if
  82.   put 0 into oneVis
  83.   put 0 into twoVis
  84.   put 0 into tripOn
  85.   put 0 into infoOn
  86.   put 1 into startEnd
  87.   put 0 into theStart
  88.   put 0 into theEnd
  89.   put 0 into done
  90.   put numToChar(34) into Q
  91.   put empty into boxText
  92. end openStack
  93.  
  94.  
  95.  
  96. -- these are the routines for calculating and displaying trip data --
  97.  
  98. on SetupTrip value
  99.   global station,stationNum,done,startEnd,boxText,tripOn,infoOn
  100.   set cursor to busy
  101.   if tripOn = 1 then
  102.     if value < 10 then
  103.       put char 1 of station into stationNum
  104.       delete char 1 of station
  105.       TripRoutine station,stationNum
  106.       set cursor to busy
  107.       if done = 0 then
  108.         put 2 into startEnd
  109.         put "Click on destination station" & return & "(or click this box to cancel)" into bg fld 1
  110.         put bg fld 1 into boxText
  111.       else
  112.         put 1 into startEnd
  113.       end if
  114.     else
  115.       set cursor to busy
  116.       put char 1 to 2 of station into stationNum
  117.       delete char 1 to 2 of station
  118.       TripRoutine station,stationNum
  119.       if done = 0 then
  120.         put 2 into startEnd
  121.         put "Click on destination station" & return & "(or click this box to cancel)" into bg fld 1
  122.         put bg fld 1 into boxText
  123.       else
  124.         put 1 into startEnd
  125.         set cursor to busy
  126.       end if
  127.     end if
  128.   end if
  129.   if infoOn =1 then
  130.     GetInfo value
  131.   end if
  132. end SetupTrip
  133.  
  134. on TripRoutine stat,statNum
  135.   global tripOn,startEnd,theStart,theEnd, done,statName1,statName2,theFare1,theFare2,theFare3,infoOn
  136.   set cursor to busy
  137.   if tripOn = 1 then
  138.     if startEnd = 1 then
  139.       beep
  140.       put statNum into theStart
  141.       put stat into statName1
  142.       put 0 into done
  143.     end if
  144.     if startEnd = 2 then
  145.       beep
  146.       beep
  147.       put statNum into theEnd
  148.       put stat into statName2
  149.       set cursor to busy
  150.  
  151.       if theStart < theEnd then
  152.         put item theStart of GetString(15002,theEnd) into theTime
  153.       else
  154.         put item theEnd of GetString(15002,theStart) into theTime
  155.       end if
  156.  
  157.       if theStart < theEnd then
  158.         put item theStart of GetString(15001,theEnd) into theFare1
  159.       else
  160.         put item theEnd of GetString(15001,theStart) into theFare1
  161.       end if
  162.  
  163.       if theStart < theEnd then
  164.         put item theEnd of GetString(15001,theStart) into theFare2
  165.       else
  166.         put item theStart of GetString(15001,theEnd) into theFare2
  167.       end if
  168.  
  169.       if theStart < theEnd then
  170.         put item theEnd of GetString(15002,theStart) into theFare3
  171.       else
  172.         put item theStart of GetString(15002,theEnd) into theFare3
  173.       end if
  174.  
  175.       set cursor to busy
  176.       InfoField theFare1,theTime,statName1,statName2,theFare2,theFare3
  177.       put 1 into startEnd
  178.       put 1 into done
  179.       put 0 into tripOn
  180.     end if
  181.   end if
  182. end TripRoutine
  183.  
  184.  
  185. -- this handler fills & displays the Info pop-up field according --
  186. -- to whatever parameters are passed to it.                      --
  187.  
  188. on InfoField local1,local2,local3,local4,local5,local6
  189.   global tripOn
  190.   set cursor to busy
  191.   if tripOn = 1 then
  192.     set numberFormat to "0.00"
  193.     put local1/100 into local1
  194.     put local5/100 into local5
  195.     put local6/100 into local6
  196.     set cursor to busy
  197.  
  198.     put "From " & local3 & return & " to " & local4 & ":" & return & return & "Average time - " & local2 & " minutes." & return & "Rush hour - $" & local5 & return & "Non-rush - $" & local1 & return & "Sr. Citizen/Disabled - $" & local6 & return & "Average time: " into cd fld 1
  199.  
  200.   end if
  201.   set cursor to busy
  202.   hide bg fld 1
  203.   show cd fld 1
  204. end InfoField
  205.  
  206.  
  207. -- this is the routine for retrieving station info. --
  208.  
  209. on GetInfo which
  210.   global infoOn
  211.   put item 2 of GetString(15003,which) into cd fld 1
  212.   InfoField empty,empty,empty,empty,empty
  213.   put 0 into infoOn
  214. end GetInfo
  215.  
  216.  
  217.